home *** CD-ROM | disk | FTP | other *** search
/ Champak 50 / Volume 50 - JOGO DISK .iso / Games / moonstonemadness.swf / scripts / __Packages / LevelSelector.as < prev    next >
Encoding:
Text File  |  2007-09-27  |  3.4 KB  |  98 lines

  1. class LevelSelector
  2. {
  3.    var mcRef;
  4.    var nLevelType;
  5.    static var STORY_ROW_NUM = 4;
  6.    function LevelSelector(__mcRef, __nLevelType)
  7.    {
  8.       this.mcRef = __mcRef;
  9.       this.nLevelType = __nLevelType;
  10.       if(this.nLevelType == BaseLevelData.LEVEL_TYPE_USER)
  11.       {
  12.          this.doGenerateUserGrid();
  13.       }
  14.       else
  15.       {
  16.          this.doGenerateStoryGrid();
  17.       }
  18.    }
  19.    function doCreateLevel(__nRowNum)
  20.    {
  21.       Game.Instance.doCreateNewLevel(__nRowNum);
  22.    }
  23.    function doDeleteLevel(__oLevel)
  24.    {
  25.       Game.Instance.doAskDeleteLevel(__oLevel);
  26.    }
  27.    function onLevelDeleted()
  28.    {
  29.       this.doGenerateUserGrid();
  30.    }
  31.    function doEditLevel(__oLevel)
  32.    {
  33.       Game.Instance.doEditLevel(__oLevel);
  34.    }
  35.    function doPlayLevel(__oLevel)
  36.    {
  37.       Game.Instance.doStartLevel(__oLevel,this.nLevelType);
  38.    }
  39.    function doDestroy()
  40.    {
  41.    }
  42.    function doGenerateUserGrid()
  43.    {
  44.       var _loc2_ = 1;
  45.       while(_loc2_ <= PlayerStatus.MAX_USER_LEVELS)
  46.       {
  47.          var _loc3_ = Game.Instance.Status.getLevelData(this.nLevelType,_loc2_);
  48.          if(_loc3_ != undefined)
  49.          {
  50.             this.mcRef["mcLevel" + _loc2_].gotoAndStop("Active");
  51.             this.mcRef["mcLevel" + _loc2_]._visible = true;
  52.             this.mcRef["mcLevel" + _loc2_].txtLevel.text = _loc3_.LevelNumber;
  53.             this.mcRef["mcLevel" + _loc2_].btnLevel.onRelease = Library.Utils.Delegate.create(this,this.doPlayLevel,_loc3_);
  54.             this.mcRef["mcLevel" + _loc2_].txtLevelName.text = _loc3_.LevelName;
  55.             this.mcRef["mcLevel" + _loc2_].btnDelete.onRelease = Library.Utils.Delegate.create(this,this.doDeleteLevel,_loc3_);
  56.             this.mcRef["mcLevel" + _loc2_].btnEdit.onRelease = Library.Utils.Delegate.create(this,this.doEditLevel,_loc3_);
  57.             this.mcRef["mcLevel" + _loc2_].txtScore.text = Library.Utils.Tools.getFormatedNumber(_loc3_.Score,6);
  58.          }
  59.          else
  60.          {
  61.             this.mcRef["mcLevel" + _loc2_].gotoAndStop("Empty");
  62.             this.mcRef["mcLevel" + _loc2_].btnCreate.onRelease = Library.Utils.Delegate.create(this,this.doCreateLevel,_loc2_);
  63.          }
  64.          _loc2_ = _loc2_ + 1;
  65.       }
  66.    }
  67.    function doGenerateStoryGrid()
  68.    {
  69.       var _loc4_ = 0;
  70.       var _loc2_ = undefined;
  71.       _loc2_ = 1;
  72.       while(_loc2_ <= Game.Instance.Status.getLevelQuantity(this.nLevelType))
  73.       {
  74.          var _loc3_ = Game.Instance.Status.getLevelData(this.nLevelType,_loc2_);
  75.          if(_loc3_.Locked)
  76.          {
  77.             this.mcRef["mcLevel" + _loc2_].gotoAndStop("Locked");
  78.             this.mcRef["btnLevel" + _loc2_].enabled = false;
  79.          }
  80.          else
  81.          {
  82.             this.mcRef["mcLevel" + _loc2_].gotoAndStop("Active");
  83.             this.mcRef["btnLevel" + _loc2_].onRelease = Library.Utils.Delegate.create(this,this.doPlayLevel,_loc3_);
  84.             this.mcRef["mcLevel" + _loc2_].txtScore.text = Library.Utils.Tools.getFormatedNumber(_loc3_.Score,6);
  85.          }
  86.          _loc4_ += _loc3_.Score;
  87.          _loc2_ = _loc2_ + 1;
  88.       }
  89.       while(_loc2_ <= LevelSelector.STORY_ROW_NUM)
  90.       {
  91.          this.mcRef["mcLevel" + _loc2_].gotoAndStop("Locked");
  92.          this.mcRef["btnLevel" + _loc2_].enabled = false;
  93.          _loc2_ = _loc2_ + 1;
  94.       }
  95.       this.mcRef.mcScore.txtTotalScore.text = Library.Utils.Tools.getFormatedNumber(_loc4_,8);
  96.    }
  97. }
  98.